package com.zlkj.pro.modular.business.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.*;

import java.time.LocalDate;
import java.util.Date;

/**
 * 代理商信息
 *
 * @author eddy
 * @date 2024/4/08
 * @time 14:28
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Builder
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "t_agent")
public class AgentEntity extends Model<AgentEntity> {

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @TableField("name")
    private String name;

    @TableField("logo_file_id")
    private Long logoFileId;

    @TableField("level")
    private String level;

    @TableField("address")
    private String address;

    @TableField("contact_name")
    private String contactName;

    @TableField("contact_phone")
    private String contactPhone;

    @TableField("contact_mail")
    private String contactMail;

    @TableField(value = "expiration_date_start")
    private LocalDate expirationDateStart;

    @TableField(value = "expiration_date_end")
    private LocalDate expirationDateEnd;

    @TableField("region")
    private String region;

    @TableField("area")
    private String area;

    @TableField("status_flag")
    private Integer statusFlag;

    @TableField("data_sort")
    private Integer dataSort;

    @TableField("remark")
    private String remark;

    /**
     * 报备单编码
     */
    @TableField("cer_number")
    private Integer cerNumber;

    /**
     * 删除标记：Y-已删除，N-未删除
     */
    @TableLogic
    @TableField(value = "del_flag")
    private String delFlag;

    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 创建人
     */
    @TableField(value = "create_user", fill = FieldFill.INSERT)
    private Long createUser;

    /**
     * 更新时间
     */
    @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 更新人
     */
    @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private Long updateUser;


}